x86emul: track only rIP in emulator state
authorJan Beulich <jbeulich@suse.com>
Thu, 29 Sep 2016 10:02:39 +0000 (12:02 +0200)
committerJan Beulich <jbeulich@suse.com>
Thu, 29 Sep 2016 10:02:39 +0000 (12:02 +0200)
commit0552a8cfda43e4c14f86fee357b5cb354e433acd
tree3972cc5d8b12d661ddf27606ca48e38a56583c0b
parent042756fe017c27a1d04cc4cc47c72d148378d032
x86emul: track only rIP in emulator state

Now that all decoding happens in x86_decode() there's no need to keep
the local registers copy in struct x86_emulate_state. Only rIP gets
updated in the decode phase, so only that register needs tracking
there. All other (read-only) registers can be read from the original
structure (but sadly, due to it getting passed to decode_register(),
the pointer can't be made point to "const" to make the compiler help
ensure no modification happens).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/x86_emulate/x86_emulate.c